Skip to content

ci: add release automation workflow#13

Merged
Wreos merged 1 commit intomainfrom
codex/release-automation
Feb 21, 2026
Merged

ci: add release automation workflow#13
Wreos merged 1 commit intomainfrom
codex/release-automation

Conversation

@Wreos
Copy link
Owner

@Wreos Wreos commented Feb 21, 2026

Summary

  • add workflow .github/workflows/release-automation.yml (manual dispatch)
  • add script scripts/release_automation.py for semver bump + changelog section cut
  • generate release notes from CHANGELOG.md into RELEASE_NOTES.md
  • automate commit, tag (vX.Y.Z), push, and GitHub Release creation
  • add docs docs/release-automation.md and link from README/checklist

Validation

  • local script dry run on temporary copy succeeded
  • plugin schema validation passed
  • markdown link sweep passed

@Wreos Wreos merged commit f12e38b into main Feb 21, 2026
3 checks passed
@Wreos Wreos deleted the codex/release-automation branch February 21, 2026 20:25
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a8a2ab3cac

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

- name: Create and push tag
run: |
git tag "v${{ steps.release_version.outputs.value }}"
git push origin main --follow-tags

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Restrict releases to main or push HEAD explicitly

This workflow can be manually dispatched from any branch, but the push step always runs git push origin main --follow-tags; when dispatched from a non-main ref, the release commit is created on the checked-out ref and then not pushed, so the version/changelog changes used to build the release are missing from main. This can produce a release/tag that does not correspond to the committed release metadata unless you either gate the job to refs/heads/main or push HEAD:main.

Useful? React with 👍 / 👎.

Comment on lines +57 to +58
git tag "v${{ steps.release_version.outputs.value }}"
git push origin main --follow-tags

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Push the new tag explicitly after creating it

The step creates a tag with git tag "v..." (lightweight tag) and then relies on git push ... --follow-tags; this does not reliably publish that newly created tag, so if the later action-gh-release step fails, the repository can end up with a release commit pushed but no remote vX.Y.Z tag. Push the tag directly (for example git push origin "v...") or create an annotated tag and push it.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants